@ECHO OFF

REM Command file for Sphinx documentation

set SPHINXBUILD=sphinx-build
set PDFLATEX="C:\Program Files (x86)\MiKTeX 2.8\miktex\bin\miktex-pdftex.exe"
set BUILDDIR=..\build\docs
set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% source
set ALLSPHINXOPTSSTARTER=-d %BUILDDIR%/doctrees/starter %SPHINXOPTS% source/starter
if NOT "%PAPER%" == "" (
	set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS%
)

if "%1" == "" goto help

if "%1" == "help" (
    :help
    echo.Please use `make ^<target^>` where ^<target^> is one of
    echo.  html         to make standalone HTML files
    echo.  dirhtml      to make HTML files named index.html in directories
    echo.  pickle       to make pickle files
    echo.  json         to make JSON files
    echo.  htmlhelp     to make HTML files and a HTML help project
    echo.  qthelp       to make HTML files and a qthelp project
    echo.  latex        to make LaTeX files, you can set PAPER=a4 or PAPER=letter
    echo.  pdf          to make pdf files, you can set PAPER=a4 or PAPER=letter
    echo.  changes      to make an overview over all changed/added/deprecated items
    echo.  linkcheck    to check all external links for integrity
    echo.  doctest      to run all doctests embedded in the documentation if enabled
    echo.  starter-pdf  to make the starter guide as a PDF document
    echo.  starter-html to make the starter guide as a HTML files
    goto end
)

if "%1" == "clean" (
	for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i
	del /q /s %BUILDDIR%\*
	goto end
)

if "%1" == "html" (
	%SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html
	echo.
	echo.Build finished. The HTML pages are in %BUILDDIR%/html.
	goto end
)

if "%1" == "dirhtml" (
	%SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml
	echo.
	echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml.
	goto end
)

if "%1" == "pickle" (
	%SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle
	echo.
	echo.Build finished; now you can process the pickle files.
	goto end
)

if "%1" == "json" (
	%SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json
	echo.
	echo.Build finished; now you can process the JSON files.
	goto end
)

if "%1" == "htmlhelp" (
	%SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp
	echo.
	echo.Build finished; now you can run HTML Help Workshop with the ^
.hhp project file in %BUILDDIR%/htmlhelp.
	goto end
)

if "%1" == "qthelp" (
	%SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp
	echo.
	echo.Build finished; now you can run "qcollectiongenerator" with the ^
.qhcp project file in %BUILDDIR%/qthelp, like this:
	echo.^> qcollectiongenerator %BUILDDIR%\qthelp\TurbulenzGameEngine.qhcp
	echo.To view the help file:
	echo.^> assistant -collectionFile %BUILDDIR%\qthelp\TurbulenzGameEngine.ghc
	goto end
)

if "%1" == "latex" (
	%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
	echo.
	echo.Build finished; the LaTeX files are in %BUILDDIR%/latex.
	goto end
)

if "%1" == "pdf" (
	%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
	mkdir "%BUILDDIR%/pdf"
	pushd "%BUILDDIR%/latex/"
	texify --pdf --engine=xetex --tex-option=-synctex=1 TurbulenzGameEngine.tex
	copy TurbulenzGameEngine.pdf ..\pdf\TurbulenzGameEngine.pdf
	popd
	echo.
	echo.Build finished; the pdf files are in %BUILDDIR%/pdf.
	goto end
)

if "%1" == "changes" (
	%SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes
	echo.
	echo.The overview file is in %BUILDDIR%/changes.
	goto end
)

if "%1" == "linkcheck" (
	%SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck
	echo.
	echo.Link check complete; look for any errors in the above output ^
or in %BUILDDIR%/linkcheck/output.txt.
	goto end
)

if "%1" == "doctest" (
	%SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest
	echo.
	echo.Testing of doctests in the sources finished, look at the ^
results in %BUILDDIR%/doctest/output.txt.
	goto end
)

if "%1" == "starter-pdf" (
	%SPHINXBUILD% -b latex %ALLSPHINXOPTSSTARTER% %BUILDDIR%/latex/starter
    mkdir "%BUILDDIR%/pdf/starter"
    %PDFLATEX% -halt-on-error -undump=pdflatex -output-directory=%BUILDDIR%/pdf/starter -include-directory=%BUILDDIR%/latex/starter %BUILDDIR%/latex/starter/TurbulenzGettingStartedGuide.tex
	echo.
	echo.Build finished; the pdf files are in %BUILDDIR%/pdf/starter.
	goto end
)

if "%1" == "starter-html" (
	%SPHINXBUILD% -b html %ALLSPHINXOPTSSTARTER% %BUILDDIR%/html/starter
	echo.
	echo.Build finished. The HTML pages are in %BUILDDIR%/html/starter.
	goto end
)

:end
